home *** CD-ROM | disk | FTP | other *** search
/ Almathera Ten Pack 3: CDPD 3 / Almathera Ten on Ten - Disc 3: CDPD3.iso / scope / 101-125 / scopedisk113 / empire / doc / hosting < prev    next >
Text File  |  1995-03-19  |  12KB  |  262 lines

  1.         Amiga Empire by Chris Gray - Hosting an Empire Game
  2.  
  3.  
  4. Hosting an Amiga Empire game is fairly straightforward in the normal cases,
  5. and can be done on a floppy based Amiga with no expansion memory. Hosting a
  6. large game requires a hard disk because of the size of the data files, but
  7. it is unlikely that more than a handfull of people in the world would want
  8. to do that (you would need an Amiga with a half dozen modems and serial
  9. ports, along with a dozen or two people wanting to play the game!) The
  10. first step is to decide where you want the data files to go. All of the
  11. files will be generated when the world creation program, EmpCre, is run.
  12.  
  13.  
  14. Summary of Hosting
  15.  
  16. 1) Decide where the game files are to go. For a first try, just have them
  17.     in the 'Game' directory.
  18.  
  19. 2) Create the world. For a first test world, a 16 x 16 world will do just
  20.     fine. From a shell, CD to the Games directory and type:
  21.  
  22.     EmpCre < 16x16
  23.  
  24.     From WorkBench, open the Game drawer and double click on the 16x16
  25.     icon. A window will be opened for output messages. In either case you
  26.     will get a lot of output as EmpCre tries to randomly create a world as
  27.     defined by the parameters in the '16x16' file. The world will be 16
  28.     sectors high by 16 sectors wide, and will have 3 countries, a deity
  29.     called 'god' with password 'godpassword', and space for 2 regular
  30.     countries. The country creation password will be 'creationpassword'.
  31.     A compressed map of the created world will be shown. The 'I's mark rich
  32.     iron deposits, the 'G's mark rich gold deposits, and the 'X's mark
  33.     sectors rich in both iron and gold. The data files for the world will
  34.     be created. Any files left over from a previous game in the same
  35.     directory will be deleted.
  36.  
  37.     It is possible that EmpCre will fail to satisfactorily create a world,
  38.     due to lack of connected space for santuaries, lack of accessible rich
  39.     deposits, etc. In this case, no map will be shown and no files will be
  40.     created. Just run EmpCre again to try again with the same parameters.
  41.  
  42.     If you run EmpCre directly, it will prompt you for all of the
  43.     parameters it needs. Everything defaults, so you can just hit RETURN
  44.     for each one. These parameters are described in more detail later.
  45.  
  46. 3) Run the server. From a shell, type
  47.  
  48.     Run EmpServ
  49.  
  50.     From WorkBench, double click on the EmpServ icon. There will be some
  51.     disk activity as the server starts up, and reads in the basic world and
  52.     country information. It will then be ready to accept requests from
  53.     client programs.
  54.  
  55. 4) Run client programs. From a shell, CD to the Progs directory and type:
  56.  
  57.     Run SEREmp
  58.     Empire
  59.  
  60.     From WorkBench, find and open the Progs drawer, then double click on
  61.     the SEREmp icon and then the Empire icon. When the first one is
  62.     started, it will have to load 'Empire.libary' from your LIBS directory
  63.     (you did copy it to there didn't you?), so there will be a fair amount
  64.     of disk activity. It is not necessary to run both SEREmp and Empire,
  65.     but doing so shows the multi-player nature of this release of Amiga
  66.     Empire. SEREmp will attempt to open the serial port (it will need
  67.     DEVS:serial.device in order to do this), for a 2400/1200/300 baud
  68.     connection at either no or even parity. If you have a modem connected
  69.     to your regular serial port, you should see the DTR light come on.
  70.     Empire will open a window for WorkBench, or use your shell window. You
  71.     should see:
  72.  
  73.             Welcome to Amiga Empire Version 2.0!!
  74.                 by Chris Gray
  75.  
  76.      Enter country name:
  77.  
  78.     At this point you can either log in as country 'god' with password
  79.     'godpassword', or create a new country with whatever name and password
  80.     you want. Empire will then ask you for the country creation password,
  81.     which is 'creationpassword' if you used EmpCre as above. File 'Intro'
  82.     contains a log of a sample session of starting up a new country.
  83.  
  84.     NOTE: a couple of commands in Amiga Empire, notably 'map', 'power', and
  85.     'radar', require a large amount of stack space. The client programs
  86.     check the stack size given to them and will not run if it is less than
  87.     25000. My guess is that this is at least twice as much as needed, so it
  88.     should be quite safe.
  89.  
  90. 5) Shut down the game. If you are running Empire locally, type 'bye' to
  91.     exit. This will leave you in the shell or will close the window and
  92.     leave you back in WorkBench. SEREmp and the server will still be
  93.     running, however. To shut them down, from a shell type:
  94.  
  95.     EmpShut
  96.  
  97.     From WorkBench, double click on the EmpShut icon. In a second or two
  98.     all SEREmps running and the server should shut down. If someone is
  99.     connected to a SEREmp and is playing, the shutdown of that SEREmp and
  100.     of the server will be delayed until that player leaves.
  101.  
  102.     From the shell, the effect of an EmpShut can also be done by sending a
  103.     control-C signal to the server. Issue the 'Status' command to see the
  104.     various CLI processes running (WorkBench tasks do NOT show up), and
  105.     note the CLI number for EmpServ. Use the 'Break' command to send the
  106.     signal, as in
  107.  
  108.     Break #
  109.  
  110.     where '#' is the appropriate CLI number. This technique can also be
  111.     used to shut down individual SEREmps. In cases where it appears a
  112.     SEREmp may have locked up, or you want the remote user to get off NOW,
  113.     you can use 'Break # f' to force an immediate disconnect. This is not
  114.     a very nice thing to do, however, and may not work with all non-
  115.     standard serial ports.
  116.  
  117. 6) Logfile, etc. Empire writes a logfile, normally 'RAM:empire.log',
  118.     showing connections, disconnections and country changes that have
  119.     occured. It is also possible that error comments from the server could
  120.     appear. You can delete this logfile between runs, or you can let it
  121.     accumulate, in order to collect statistics on country usage, serial
  122.     port usage, etc. When you want to restart the game from where it left
  123.     off, just go back to step 3 above. Note that there is no problem with
  124.     leaving the SEREmps and the server running at all times - they use very
  125.     little CPU time.
  126.  
  127.  
  128. File Space Needed
  129.  
  130. The files would normally be all in one directory, but the capability exists
  131. of storing them in several directories, and across multiple disks. Files
  132. used by the game are:
  133.  
  134.     empire.files - lists paths to the various files/directories. Normally
  135.     not present, in which case everything defaults to the current
  136.     directory.
  137.     empire.world (.5K) - various constants defining the world, its weather,
  138.     update factors, damage factors, etc.
  139.     empire.country (13K) - an array of 45 country structures. Each country
  140.     structure contains the country name, password, realms, user flags,
  141.     wealth, fleet indicators, etc.
  142.     empire.sector (varies) - an array of the sectors in the world. Each
  143.     sectors occupies about 40 bytes, so a 16 x 16 world will have a 10K
  144.     sector file, and a 256 x 256 world will have a 2.6 Meg file.
  145.     empire.ship (varies) - an array of the ships in the world. Each ship
  146.     occupies about 20 bytes. A small game will probably top out at 100
  147.     ships or less (2K), but a large world can have thousands.
  148.     empire.fleet (varies) - an array of the fleets in the world. Each fleet
  149.     occupies about 200 bytes. Most countries use no more than half a
  150.     dozen fleets at the most. A very long game with a lot of naval
  151.     activity could have more, however.
  152.     empire.loan (varies) - an array of all loans offered in the world. Each
  153.     loan occupies about 17 bytes. Loans are very infrequent.
  154.     empire.offer (varies) - an array of all sales offers in the world. Each
  155.     offer occupies about 4 bytes, so this file is quite small.
  156.     empire.power (varies) - the current power report for the game. It is
  157.     quite small (about 80 bytes per active country).
  158.     telegrams.XXX - a telegram file for each country. The size will be
  159.     determined by the maximum size of undeleted telegrams the country
  160.     has ever had. These are only a problem for a country that hasn't
  161.     deleted them for a long time (perhaps the player has left) and the
  162.     country is under heavy attack. In these cases a deity can log on to
  163.     the country and delete the telegrams.
  164.     news.XXX - news files. News items are automatically generated by the
  165.     program as events occur. Each item is small (8 bytes), and a new
  166.     file is started for each "day". Old news files can be deleted - if
  167.     someone asks to read them they will get no news.
  168.     prop.XXX - propaganda files. Rarely used, and not very big.
  169.  
  170. Four files can be created in the base directory and will be used by Empire
  171. if they are present. They are:
  172.  
  173.     empire.conMess - printed as soon as a connection is made, before the
  174.     country name prompt is given
  175.  
  176.     empire.logMess - printed after a country has logged in
  177.  
  178.     empire.logMess - printed when a country logs out
  179.  
  180.     empire.bulletin - printed as the first part of the newspaper
  181.  
  182.  
  183. Alternate File Placement
  184.  
  185. If you do not have space in one directory for EmpCre, EmpServ and all of
  186. the data files for a world (plus all of the online help files in a
  187. directory beside the one the game files are in), then you can split them up
  188. by using an 'empire.files' file. Also, you can move EmpCre and EmpServ to
  189. different directories, and then tell them where the Game directory is.
  190. Running a 128 x 128 world on a two-floppy system should be possible. To
  191. have EmpCre and EmpServ in a directory other than the base directory which
  192. will contain the game files, you can run them directly from a shell, or,
  193. from WorkBench, you can use the WorkBench Info menu item to add a Tool Type
  194. that looks like:
  195.  
  196.     PATH=directory
  197.  
  198. Note that if 'directory' does not end in a ':', it must end in a '/', since
  199. EmpCre and EmpServ just add their specific file names onto the end of it.
  200. For example, if you want to use a floppy in drive DF1 for the files, you
  201. would use:
  202.  
  203.     PATH=DF1:
  204.  
  205. If you wanted to use directory 'Empire.Game' on your 'DH0' hard disk
  206. partition, then you would use:
  207.  
  208.     PATH=DH0:Empire.Game/
  209.  
  210. You must use the same path for both EmpCre and EmpServ, or the server won't
  211. be able to find the files that EmpCre created. Also, the default path for
  212. find finding help files is '/Help/', so the help files are normally in a
  213. directory called help which is beside the directory the game files are in.
  214. Similarly, the doc file directory defaults to '/Doc/'.
  215.  
  216. To split the files across multiple directories or drives, you must use a
  217. text editor (e.g. Ed or Emacs) to create a file called 'empire.files' in
  218. your base game directory. It should contain one path per line, with the
  219. paths being given in the following order:
  220.  
  221.     full path for the log file
  222.     full path for the world file
  223.     full path for the country file
  224.     full path for the sector file
  225.     full path for the ship file
  226.     full path for the fleet file
  227.     full path for the loan file
  228.     full path for the offer file
  229.     full path, ending in '/' for the help directory
  230.     full path, ending in '/' for the doc directory
  231.  
  232. The telegram, news, and propaganda files will always be in the same
  233. directory as the 'empire.files' file. As an example, here is an
  234. 'empire.files' file which puts the log file on RAM, the sectors file on
  235. DF1, the help and doc directories on DF2 and everything else on DF0:
  236.  
  237.     RAM:empire.log
  238.     DF0:empire.world
  239.     DF0:empire.country
  240.     DF1:empire.sector
  241.     DF0:empire.ship
  242.     DF0:empire.fleet
  243.     DF0:empire.loan
  244.     DF0:empire.offer
  245.     DF2:empire.help/
  246.     DF2:empire.doc/
  247.  
  248. With this file, you would want the PATH to be 'DF0:'.
  249.  
  250. The client programs SEREmp and Empire, along with EmpShut, do not need to
  251. know where the data files are since they communicate only with the server
  252. through an Amiga Exec message port. There are many options that you can
  253. give to SEREmp, so it is described in a separate file. Similarly, the world
  254. creation parameters of EmpCre are described separately. If Empire is run
  255. from a shell, it can have a single flag, '-a', which tells it that it is
  256. running in a non-standard environment, typically over the serial port using
  257. the AUX: device. Normally, it uses control sequences understood by the
  258. Amiga console windows to turn off character display when reading passwords.
  259. This likely does not work for a terminal connected over the serial port (it
  260. locks the keyboard on mine!), so with '-a' specified, no password blanking
  261. will be done. This same flag applies to EmpCre as well.
  262.